package com.swagger.demo.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class OrdersExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OrdersExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andOrderIdIsNull() {
            addCriterion("order_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNotNull() {
            addCriterion("order_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderIdEqualTo(Long value) {
            addCriterion("order_id =", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotEqualTo(Long value) {
            addCriterion("order_id <>", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThan(Long value) {
            addCriterion("order_id >", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThanOrEqualTo(Long value) {
            addCriterion("order_id >=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThan(Long value) {
            addCriterion("order_id <", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThanOrEqualTo(Long value) {
            addCriterion("order_id <=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdIn(List<Long> values) {
            addCriterion("order_id in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotIn(List<Long> values) {
            addCriterion("order_id not in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdBetween(Long value1, Long value2) {
            addCriterion("order_id between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotBetween(Long value1, Long value2) {
            addCriterion("order_id not between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderSnIsNull() {
            addCriterion("order_sn is null");
            return (Criteria) this;
        }

        public Criteria andOrderSnIsNotNull() {
            addCriterion("order_sn is not null");
            return (Criteria) this;
        }

        public Criteria andOrderSnEqualTo(String value) {
            addCriterion("order_sn =", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotEqualTo(String value) {
            addCriterion("order_sn <>", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnGreaterThan(String value) {
            addCriterion("order_sn >", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnGreaterThanOrEqualTo(String value) {
            addCriterion("order_sn >=", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnLessThan(String value) {
            addCriterion("order_sn <", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnLessThanOrEqualTo(String value) {
            addCriterion("order_sn <=", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnLike(String value) {
            addCriterion("order_sn like", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotLike(String value) {
            addCriterion("order_sn not like", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnIn(List<String> values) {
            addCriterion("order_sn in", values, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotIn(List<String> values) {
            addCriterion("order_sn not in", values, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnBetween(String value1, String value2) {
            addCriterion("order_sn between", value1, value2, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotBetween(String value1, String value2) {
            addCriterion("order_sn not between", value1, value2, "orderSn");
            return (Criteria) this;
        }

        public Criteria andParentIdIsNull() {
            addCriterion("parent_id is null");
            return (Criteria) this;
        }

        public Criteria andParentIdIsNotNull() {
            addCriterion("parent_id is not null");
            return (Criteria) this;
        }

        public Criteria andParentIdEqualTo(Long value) {
            addCriterion("parent_id =", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdNotEqualTo(Long value) {
            addCriterion("parent_id <>", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdGreaterThan(Long value) {
            addCriterion("parent_id >", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdGreaterThanOrEqualTo(Long value) {
            addCriterion("parent_id >=", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdLessThan(Long value) {
            addCriterion("parent_id <", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdLessThanOrEqualTo(Long value) {
            addCriterion("parent_id <=", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdIn(List<Long> values) {
            addCriterion("parent_id in", values, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdNotIn(List<Long> values) {
            addCriterion("parent_id not in", values, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdBetween(Long value1, Long value2) {
            addCriterion("parent_id between", value1, value2, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdNotBetween(Long value1, Long value2) {
            addCriterion("parent_id not between", value1, value2, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIsNull() {
            addCriterion("parent is null");
            return (Criteria) this;
        }

        public Criteria andParentIsNotNull() {
            addCriterion("parent is not null");
            return (Criteria) this;
        }

        public Criteria andParentEqualTo(String value) {
            addCriterion("parent =", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentNotEqualTo(String value) {
            addCriterion("parent <>", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentGreaterThan(String value) {
            addCriterion("parent >", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentGreaterThanOrEqualTo(String value) {
            addCriterion("parent >=", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentLessThan(String value) {
            addCriterion("parent <", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentLessThanOrEqualTo(String value) {
            addCriterion("parent <=", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentLike(String value) {
            addCriterion("parent like", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentNotLike(String value) {
            addCriterion("parent not like", value, "parent");
            return (Criteria) this;
        }

        public Criteria andParentIn(List<String> values) {
            addCriterion("parent in", values, "parent");
            return (Criteria) this;
        }

        public Criteria andParentNotIn(List<String> values) {
            addCriterion("parent not in", values, "parent");
            return (Criteria) this;
        }

        public Criteria andParentBetween(String value1, String value2) {
            addCriterion("parent between", value1, value2, "parent");
            return (Criteria) this;
        }

        public Criteria andParentNotBetween(String value1, String value2) {
            addCriterion("parent not between", value1, value2, "parent");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNull() {
            addCriterion("user_id is null");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNotNull() {
            addCriterion("user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserIdEqualTo(Long value) {
            addCriterion("user_id =", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotEqualTo(Long value) {
            addCriterion("user_id <>", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThan(Long value) {
            addCriterion("user_id >", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThanOrEqualTo(Long value) {
            addCriterion("user_id >=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThan(Long value) {
            addCriterion("user_id <", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThanOrEqualTo(Long value) {
            addCriterion("user_id <=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdIn(List<Long> values) {
            addCriterion("user_id in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotIn(List<Long> values) {
            addCriterion("user_id not in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdBetween(Long value1, Long value2) {
            addCriterion("user_id between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotBetween(Long value1, Long value2) {
            addCriterion("user_id not between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountIsNull() {
            addCriterion("goods_amount is null");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountIsNotNull() {
            addCriterion("goods_amount is not null");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountEqualTo(Double value) {
            addCriterion("goods_amount =", value, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountNotEqualTo(Double value) {
            addCriterion("goods_amount <>", value, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountGreaterThan(Double value) {
            addCriterion("goods_amount >", value, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("goods_amount >=", value, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountLessThan(Double value) {
            addCriterion("goods_amount <", value, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountLessThanOrEqualTo(Double value) {
            addCriterion("goods_amount <=", value, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountIn(List<Double> values) {
            addCriterion("goods_amount in", values, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountNotIn(List<Double> values) {
            addCriterion("goods_amount not in", values, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountBetween(Double value1, Double value2) {
            addCriterion("goods_amount between", value1, value2, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andGoodsAmountNotBetween(Double value1, Double value2) {
            addCriterion("goods_amount not between", value1, value2, "goodsAmount");
            return (Criteria) this;
        }

        public Criteria andShippingFeeIsNull() {
            addCriterion("shipping_fee is null");
            return (Criteria) this;
        }

        public Criteria andShippingFeeIsNotNull() {
            addCriterion("shipping_fee is not null");
            return (Criteria) this;
        }

        public Criteria andShippingFeeEqualTo(Double value) {
            addCriterion("shipping_fee =", value, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeNotEqualTo(Double value) {
            addCriterion("shipping_fee <>", value, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeGreaterThan(Double value) {
            addCriterion("shipping_fee >", value, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeGreaterThanOrEqualTo(Double value) {
            addCriterion("shipping_fee >=", value, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeLessThan(Double value) {
            addCriterion("shipping_fee <", value, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeLessThanOrEqualTo(Double value) {
            addCriterion("shipping_fee <=", value, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeIn(List<Double> values) {
            addCriterion("shipping_fee in", values, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeNotIn(List<Double> values) {
            addCriterion("shipping_fee not in", values, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeBetween(Double value1, Double value2) {
            addCriterion("shipping_fee between", value1, value2, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingFeeNotBetween(Double value1, Double value2) {
            addCriterion("shipping_fee not between", value1, value2, "shippingFee");
            return (Criteria) this;
        }

        public Criteria andShippingTaxIsNull() {
            addCriterion("shipping_tax is null");
            return (Criteria) this;
        }

        public Criteria andShippingTaxIsNotNull() {
            addCriterion("shipping_tax is not null");
            return (Criteria) this;
        }

        public Criteria andShippingTaxEqualTo(Double value) {
            addCriterion("shipping_tax =", value, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxNotEqualTo(Double value) {
            addCriterion("shipping_tax <>", value, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxGreaterThan(Double value) {
            addCriterion("shipping_tax >", value, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxGreaterThanOrEqualTo(Double value) {
            addCriterion("shipping_tax >=", value, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxLessThan(Double value) {
            addCriterion("shipping_tax <", value, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxLessThanOrEqualTo(Double value) {
            addCriterion("shipping_tax <=", value, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxIn(List<Double> values) {
            addCriterion("shipping_tax in", values, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxNotIn(List<Double> values) {
            addCriterion("shipping_tax not in", values, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxBetween(Double value1, Double value2) {
            addCriterion("shipping_tax between", value1, value2, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andShippingTaxNotBetween(Double value1, Double value2) {
            addCriterion("shipping_tax not between", value1, value2, "shippingTax");
            return (Criteria) this;
        }

        public Criteria andTaxAmountIsNull() {
            addCriterion("tax_amount is null");
            return (Criteria) this;
        }

        public Criteria andTaxAmountIsNotNull() {
            addCriterion("tax_amount is not null");
            return (Criteria) this;
        }

        public Criteria andTaxAmountEqualTo(Double value) {
            addCriterion("tax_amount =", value, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountNotEqualTo(Double value) {
            addCriterion("tax_amount <>", value, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountGreaterThan(Double value) {
            addCriterion("tax_amount >", value, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("tax_amount >=", value, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountLessThan(Double value) {
            addCriterion("tax_amount <", value, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountLessThanOrEqualTo(Double value) {
            addCriterion("tax_amount <=", value, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountIn(List<Double> values) {
            addCriterion("tax_amount in", values, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountNotIn(List<Double> values) {
            addCriterion("tax_amount not in", values, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountBetween(Double value1, Double value2) {
            addCriterion("tax_amount between", value1, value2, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andTaxAmountNotBetween(Double value1, Double value2) {
            addCriterion("tax_amount not between", value1, value2, "taxAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountIsNull() {
            addCriterion("integral_count is null");
            return (Criteria) this;
        }

        public Criteria andIntegralCountIsNotNull() {
            addCriterion("integral_count is not null");
            return (Criteria) this;
        }

        public Criteria andIntegralCountEqualTo(Long value) {
            addCriterion("integral_count =", value, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountNotEqualTo(Long value) {
            addCriterion("integral_count <>", value, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountGreaterThan(Long value) {
            addCriterion("integral_count >", value, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountGreaterThanOrEqualTo(Long value) {
            addCriterion("integral_count >=", value, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountLessThan(Long value) {
            addCriterion("integral_count <", value, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountLessThanOrEqualTo(Long value) {
            addCriterion("integral_count <=", value, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountIn(List<Long> values) {
            addCriterion("integral_count in", values, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountNotIn(List<Long> values) {
            addCriterion("integral_count not in", values, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountBetween(Long value1, Long value2) {
            addCriterion("integral_count between", value1, value2, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralCountNotBetween(Long value1, Long value2) {
            addCriterion("integral_count not between", value1, value2, "integralCount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountIsNull() {
            addCriterion("integral_amount is null");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountIsNotNull() {
            addCriterion("integral_amount is not null");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountEqualTo(Double value) {
            addCriterion("integral_amount =", value, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountNotEqualTo(Double value) {
            addCriterion("integral_amount <>", value, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountGreaterThan(Double value) {
            addCriterion("integral_amount >", value, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("integral_amount >=", value, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountLessThan(Double value) {
            addCriterion("integral_amount <", value, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountLessThanOrEqualTo(Double value) {
            addCriterion("integral_amount <=", value, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountIn(List<Double> values) {
            addCriterion("integral_amount in", values, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountNotIn(List<Double> values) {
            addCriterion("integral_amount not in", values, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountBetween(Double value1, Double value2) {
            addCriterion("integral_amount between", value1, value2, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andIntegralAmountNotBetween(Double value1, Double value2) {
            addCriterion("integral_amount not between", value1, value2, "integralAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountIsNull() {
            addCriterion("coupon_amount is null");
            return (Criteria) this;
        }

        public Criteria andCouponAmountIsNotNull() {
            addCriterion("coupon_amount is not null");
            return (Criteria) this;
        }

        public Criteria andCouponAmountEqualTo(Double value) {
            addCriterion("coupon_amount =", value, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountNotEqualTo(Double value) {
            addCriterion("coupon_amount <>", value, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountGreaterThan(Double value) {
            addCriterion("coupon_amount >", value, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("coupon_amount >=", value, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountLessThan(Double value) {
            addCriterion("coupon_amount <", value, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountLessThanOrEqualTo(Double value) {
            addCriterion("coupon_amount <=", value, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountIn(List<Double> values) {
            addCriterion("coupon_amount in", values, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountNotIn(List<Double> values) {
            addCriterion("coupon_amount not in", values, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountBetween(Double value1, Double value2) {
            addCriterion("coupon_amount between", value1, value2, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCouponAmountNotBetween(Double value1, Double value2) {
            addCriterion("coupon_amount not between", value1, value2, "couponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountIsNull() {
            addCriterion("cashcoupon_amount is null");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountIsNotNull() {
            addCriterion("cashcoupon_amount is not null");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountEqualTo(Double value) {
            addCriterion("cashcoupon_amount =", value, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountNotEqualTo(Double value) {
            addCriterion("cashcoupon_amount <>", value, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountGreaterThan(Double value) {
            addCriterion("cashcoupon_amount >", value, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("cashcoupon_amount >=", value, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountLessThan(Double value) {
            addCriterion("cashcoupon_amount <", value, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountLessThanOrEqualTo(Double value) {
            addCriterion("cashcoupon_amount <=", value, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountIn(List<Double> values) {
            addCriterion("cashcoupon_amount in", values, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountNotIn(List<Double> values) {
            addCriterion("cashcoupon_amount not in", values, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountBetween(Double value1, Double value2) {
            addCriterion("cashcoupon_amount between", value1, value2, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andCashcouponAmountNotBetween(Double value1, Double value2) {
            addCriterion("cashcoupon_amount not between", value1, value2, "cashcouponAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountIsNull() {
            addCriterion("discount_amount is null");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountIsNotNull() {
            addCriterion("discount_amount is not null");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountEqualTo(Double value) {
            addCriterion("discount_amount =", value, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountNotEqualTo(Double value) {
            addCriterion("discount_amount <>", value, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountGreaterThan(Double value) {
            addCriterion("discount_amount >", value, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("discount_amount >=", value, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountLessThan(Double value) {
            addCriterion("discount_amount <", value, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountLessThanOrEqualTo(Double value) {
            addCriterion("discount_amount <=", value, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountIn(List<Double> values) {
            addCriterion("discount_amount in", values, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountNotIn(List<Double> values) {
            addCriterion("discount_amount not in", values, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountBetween(Double value1, Double value2) {
            addCriterion("discount_amount between", value1, value2, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andDiscountAmountNotBetween(Double value1, Double value2) {
            addCriterion("discount_amount not between", value1, value2, "discountAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountIsNull() {
            addCriterion("payable_amount is null");
            return (Criteria) this;
        }

        public Criteria andPayableAmountIsNotNull() {
            addCriterion("payable_amount is not null");
            return (Criteria) this;
        }

        public Criteria andPayableAmountEqualTo(Double value) {
            addCriterion("payable_amount =", value, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountNotEqualTo(Double value) {
            addCriterion("payable_amount <>", value, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountGreaterThan(Double value) {
            addCriterion("payable_amount >", value, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("payable_amount >=", value, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountLessThan(Double value) {
            addCriterion("payable_amount <", value, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountLessThanOrEqualTo(Double value) {
            addCriterion("payable_amount <=", value, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountIn(List<Double> values) {
            addCriterion("payable_amount in", values, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountNotIn(List<Double> values) {
            addCriterion("payable_amount not in", values, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountBetween(Double value1, Double value2) {
            addCriterion("payable_amount between", value1, value2, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andPayableAmountNotBetween(Double value1, Double value2) {
            addCriterion("payable_amount not between", value1, value2, "payableAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountIsNull() {
            addCriterion("red_amount is null");
            return (Criteria) this;
        }

        public Criteria andRedAmountIsNotNull() {
            addCriterion("red_amount is not null");
            return (Criteria) this;
        }

        public Criteria andRedAmountEqualTo(Double value) {
            addCriterion("red_amount =", value, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountNotEqualTo(Double value) {
            addCriterion("red_amount <>", value, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountGreaterThan(Double value) {
            addCriterion("red_amount >", value, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("red_amount >=", value, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountLessThan(Double value) {
            addCriterion("red_amount <", value, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountLessThanOrEqualTo(Double value) {
            addCriterion("red_amount <=", value, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountIn(List<Double> values) {
            addCriterion("red_amount in", values, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountNotIn(List<Double> values) {
            addCriterion("red_amount not in", values, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountBetween(Double value1, Double value2) {
            addCriterion("red_amount between", value1, value2, "redAmount");
            return (Criteria) this;
        }

        public Criteria andRedAmountNotBetween(Double value1, Double value2) {
            addCriterion("red_amount not between", value1, value2, "redAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountIsNull() {
            addCriterion("pay_amount is null");
            return (Criteria) this;
        }

        public Criteria andPayAmountIsNotNull() {
            addCriterion("pay_amount is not null");
            return (Criteria) this;
        }

        public Criteria andPayAmountEqualTo(Double value) {
            addCriterion("pay_amount =", value, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountNotEqualTo(Double value) {
            addCriterion("pay_amount <>", value, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountGreaterThan(Double value) {
            addCriterion("pay_amount >", value, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("pay_amount >=", value, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountLessThan(Double value) {
            addCriterion("pay_amount <", value, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountLessThanOrEqualTo(Double value) {
            addCriterion("pay_amount <=", value, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountIn(List<Double> values) {
            addCriterion("pay_amount in", values, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountNotIn(List<Double> values) {
            addCriterion("pay_amount not in", values, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountBetween(Double value1, Double value2) {
            addCriterion("pay_amount between", value1, value2, "payAmount");
            return (Criteria) this;
        }

        public Criteria andPayAmountNotBetween(Double value1, Double value2) {
            addCriterion("pay_amount not between", value1, value2, "payAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountIsNull() {
            addCriterion("total_amount is null");
            return (Criteria) this;
        }

        public Criteria andTotalAmountIsNotNull() {
            addCriterion("total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andTotalAmountEqualTo(Double value) {
            addCriterion("total_amount =", value, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountNotEqualTo(Double value) {
            addCriterion("total_amount <>", value, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountGreaterThan(Double value) {
            addCriterion("total_amount >", value, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("total_amount >=", value, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountLessThan(Double value) {
            addCriterion("total_amount <", value, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountLessThanOrEqualTo(Double value) {
            addCriterion("total_amount <=", value, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountIn(List<Double> values) {
            addCriterion("total_amount in", values, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountNotIn(List<Double> values) {
            addCriterion("total_amount not in", values, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountBetween(Double value1, Double value2) {
            addCriterion("total_amount between", value1, value2, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andTotalAmountNotBetween(Double value1, Double value2) {
            addCriterion("total_amount not between", value1, value2, "totalAmount");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceIsNull() {
            addCriterion("markup_price is null");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceIsNotNull() {
            addCriterion("markup_price is not null");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceEqualTo(Double value) {
            addCriterion("markup_price =", value, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceNotEqualTo(Double value) {
            addCriterion("markup_price <>", value, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceGreaterThan(Double value) {
            addCriterion("markup_price >", value, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("markup_price >=", value, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceLessThan(Double value) {
            addCriterion("markup_price <", value, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceLessThanOrEqualTo(Double value) {
            addCriterion("markup_price <=", value, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceIn(List<Double> values) {
            addCriterion("markup_price in", values, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceNotIn(List<Double> values) {
            addCriterion("markup_price not in", values, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceBetween(Double value1, Double value2) {
            addCriterion("markup_price between", value1, value2, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andMarkupPriceNotBetween(Double value1, Double value2) {
            addCriterion("markup_price not between", value1, value2, "markupPrice");
            return (Criteria) this;
        }

        public Criteria andStoreIdIsNull() {
            addCriterion("store_id is null");
            return (Criteria) this;
        }

        public Criteria andStoreIdIsNotNull() {
            addCriterion("store_id is not null");
            return (Criteria) this;
        }

        public Criteria andStoreIdEqualTo(Long value) {
            addCriterion("store_id =", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotEqualTo(Long value) {
            addCriterion("store_id <>", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThan(Long value) {
            addCriterion("store_id >", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThanOrEqualTo(Long value) {
            addCriterion("store_id >=", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThan(Long value) {
            addCriterion("store_id <", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThanOrEqualTo(Long value) {
            addCriterion("store_id <=", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdIn(List<Long> values) {
            addCriterion("store_id in", values, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotIn(List<Long> values) {
            addCriterion("store_id not in", values, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdBetween(Long value1, Long value2) {
            addCriterion("store_id between", value1, value2, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotBetween(Long value1, Long value2) {
            addCriterion("store_id not between", value1, value2, "storeId");
            return (Criteria) this;
        }

        public Criteria andOptimisticIsNull() {
            addCriterion("optimistic is null");
            return (Criteria) this;
        }

        public Criteria andOptimisticIsNotNull() {
            addCriterion("optimistic is not null");
            return (Criteria) this;
        }

        public Criteria andOptimisticEqualTo(Integer value) {
            addCriterion("optimistic =", value, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticNotEqualTo(Integer value) {
            addCriterion("optimistic <>", value, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticGreaterThan(Integer value) {
            addCriterion("optimistic >", value, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticGreaterThanOrEqualTo(Integer value) {
            addCriterion("optimistic >=", value, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticLessThan(Integer value) {
            addCriterion("optimistic <", value, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticLessThanOrEqualTo(Integer value) {
            addCriterion("optimistic <=", value, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticIn(List<Integer> values) {
            addCriterion("optimistic in", values, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticNotIn(List<Integer> values) {
            addCriterion("optimistic not in", values, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticBetween(Integer value1, Integer value2) {
            addCriterion("optimistic between", value1, value2, "optimistic");
            return (Criteria) this;
        }

        public Criteria andOptimisticNotBetween(Integer value1, Integer value2) {
            addCriterion("optimistic not between", value1, value2, "optimistic");
            return (Criteria) this;
        }

        public Criteria andProgressIsNull() {
            addCriterion("progress is null");
            return (Criteria) this;
        }

        public Criteria andProgressIsNotNull() {
            addCriterion("progress is not null");
            return (Criteria) this;
        }

        public Criteria andProgressEqualTo(Integer value) {
            addCriterion("progress =", value, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressNotEqualTo(Integer value) {
            addCriterion("progress <>", value, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressGreaterThan(Integer value) {
            addCriterion("progress >", value, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressGreaterThanOrEqualTo(Integer value) {
            addCriterion("progress >=", value, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressLessThan(Integer value) {
            addCriterion("progress <", value, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressLessThanOrEqualTo(Integer value) {
            addCriterion("progress <=", value, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressIn(List<Integer> values) {
            addCriterion("progress in", values, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressNotIn(List<Integer> values) {
            addCriterion("progress not in", values, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressBetween(Integer value1, Integer value2) {
            addCriterion("progress between", value1, value2, "progress");
            return (Criteria) this;
        }

        public Criteria andProgressNotBetween(Integer value1, Integer value2) {
            addCriterion("progress not between", value1, value2, "progress");
            return (Criteria) this;
        }

        public Criteria andPayWarnIsNull() {
            addCriterion("pay_warn is null");
            return (Criteria) this;
        }

        public Criteria andPayWarnIsNotNull() {
            addCriterion("pay_warn is not null");
            return (Criteria) this;
        }

        public Criteria andPayWarnEqualTo(String value) {
            addCriterion("pay_warn =", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnNotEqualTo(String value) {
            addCriterion("pay_warn <>", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnGreaterThan(String value) {
            addCriterion("pay_warn >", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnGreaterThanOrEqualTo(String value) {
            addCriterion("pay_warn >=", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnLessThan(String value) {
            addCriterion("pay_warn <", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnLessThanOrEqualTo(String value) {
            addCriterion("pay_warn <=", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnLike(String value) {
            addCriterion("pay_warn like", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnNotLike(String value) {
            addCriterion("pay_warn not like", value, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnIn(List<String> values) {
            addCriterion("pay_warn in", values, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnNotIn(List<String> values) {
            addCriterion("pay_warn not in", values, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnBetween(String value1, String value2) {
            addCriterion("pay_warn between", value1, value2, "payWarn");
            return (Criteria) this;
        }

        public Criteria andPayWarnNotBetween(String value1, String value2) {
            addCriterion("pay_warn not between", value1, value2, "payWarn");
            return (Criteria) this;
        }

        public Criteria andIsSplitIsNull() {
            addCriterion("is_split is null");
            return (Criteria) this;
        }

        public Criteria andIsSplitIsNotNull() {
            addCriterion("is_split is not null");
            return (Criteria) this;
        }

        public Criteria andIsSplitEqualTo(Boolean value) {
            addCriterion("is_split =", value, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitNotEqualTo(Boolean value) {
            addCriterion("is_split <>", value, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitGreaterThan(Boolean value) {
            addCriterion("is_split >", value, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_split >=", value, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitLessThan(Boolean value) {
            addCriterion("is_split <", value, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitLessThanOrEqualTo(Boolean value) {
            addCriterion("is_split <=", value, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitIn(List<Boolean> values) {
            addCriterion("is_split in", values, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitNotIn(List<Boolean> values) {
            addCriterion("is_split not in", values, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitBetween(Boolean value1, Boolean value2) {
            addCriterion("is_split between", value1, value2, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsSplitNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_split not between", value1, value2, "isSplit");
            return (Criteria) this;
        }

        public Criteria andIsDelIsNull() {
            addCriterion("is_del is null");
            return (Criteria) this;
        }

        public Criteria andIsDelIsNotNull() {
            addCriterion("is_del is not null");
            return (Criteria) this;
        }

        public Criteria andIsDelEqualTo(Boolean value) {
            addCriterion("is_del =", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelNotEqualTo(Boolean value) {
            addCriterion("is_del <>", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelGreaterThan(Boolean value) {
            addCriterion("is_del >", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_del >=", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelLessThan(Boolean value) {
            addCriterion("is_del <", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelLessThanOrEqualTo(Boolean value) {
            addCriterion("is_del <=", value, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelIn(List<Boolean> values) {
            addCriterion("is_del in", values, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelNotIn(List<Boolean> values) {
            addCriterion("is_del not in", values, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelBetween(Boolean value1, Boolean value2) {
            addCriterion("is_del between", value1, value2, "isDel");
            return (Criteria) this;
        }

        public Criteria andIsDelNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_del not between", value1, value2, "isDel");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Long value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Long value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Long value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Long value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Long value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Long value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Long> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Long> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Long value1, Long value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Long value1, Long value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Long value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Long value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Long value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Long value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Long value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Long value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Long> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Long> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Long value1, Long value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Long value1, Long value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andCancelDescIsNull() {
            addCriterion("cancel_desc is null");
            return (Criteria) this;
        }

        public Criteria andCancelDescIsNotNull() {
            addCriterion("cancel_desc is not null");
            return (Criteria) this;
        }

        public Criteria andCancelDescEqualTo(String value) {
            addCriterion("cancel_desc =", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescNotEqualTo(String value) {
            addCriterion("cancel_desc <>", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescGreaterThan(String value) {
            addCriterion("cancel_desc >", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescGreaterThanOrEqualTo(String value) {
            addCriterion("cancel_desc >=", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescLessThan(String value) {
            addCriterion("cancel_desc <", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescLessThanOrEqualTo(String value) {
            addCriterion("cancel_desc <=", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescLike(String value) {
            addCriterion("cancel_desc like", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescNotLike(String value) {
            addCriterion("cancel_desc not like", value, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescIn(List<String> values) {
            addCriterion("cancel_desc in", values, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescNotIn(List<String> values) {
            addCriterion("cancel_desc not in", values, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescBetween(String value1, String value2) {
            addCriterion("cancel_desc between", value1, value2, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andCancelDescNotBetween(String value1, String value2) {
            addCriterion("cancel_desc not between", value1, value2, "cancelDesc");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeIsNull() {
            addCriterion("receipt_time is null");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeIsNotNull() {
            addCriterion("receipt_time is not null");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeEqualTo(Long value) {
            addCriterion("receipt_time =", value, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeNotEqualTo(Long value) {
            addCriterion("receipt_time <>", value, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeGreaterThan(Long value) {
            addCriterion("receipt_time >", value, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeGreaterThanOrEqualTo(Long value) {
            addCriterion("receipt_time >=", value, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeLessThan(Long value) {
            addCriterion("receipt_time <", value, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeLessThanOrEqualTo(Long value) {
            addCriterion("receipt_time <=", value, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeIn(List<Long> values) {
            addCriterion("receipt_time in", values, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeNotIn(List<Long> values) {
            addCriterion("receipt_time not in", values, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeBetween(Long value1, Long value2) {
            addCriterion("receipt_time between", value1, value2, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andReceiptTimeNotBetween(Long value1, Long value2) {
            addCriterion("receipt_time not between", value1, value2, "receiptTime");
            return (Criteria) this;
        }

        public Criteria andChannelStateIsNull() {
            addCriterion("channel_state is null");
            return (Criteria) this;
        }

        public Criteria andChannelStateIsNotNull() {
            addCriterion("channel_state is not null");
            return (Criteria) this;
        }

        public Criteria andChannelStateEqualTo(Boolean value) {
            addCriterion("channel_state =", value, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateNotEqualTo(Boolean value) {
            addCriterion("channel_state <>", value, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateGreaterThan(Boolean value) {
            addCriterion("channel_state >", value, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateGreaterThanOrEqualTo(Boolean value) {
            addCriterion("channel_state >=", value, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateLessThan(Boolean value) {
            addCriterion("channel_state <", value, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateLessThanOrEqualTo(Boolean value) {
            addCriterion("channel_state <=", value, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateIn(List<Boolean> values) {
            addCriterion("channel_state in", values, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateNotIn(List<Boolean> values) {
            addCriterion("channel_state not in", values, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateBetween(Boolean value1, Boolean value2) {
            addCriterion("channel_state between", value1, value2, "channelState");
            return (Criteria) this;
        }

        public Criteria andChannelStateNotBetween(Boolean value1, Boolean value2) {
            addCriterion("channel_state not between", value1, value2, "channelState");
            return (Criteria) this;
        }

        public Criteria andPayTimeIsNull() {
            addCriterion("pay_time is null");
            return (Criteria) this;
        }

        public Criteria andPayTimeIsNotNull() {
            addCriterion("pay_time is not null");
            return (Criteria) this;
        }

        public Criteria andPayTimeEqualTo(Long value) {
            addCriterion("pay_time =", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotEqualTo(Long value) {
            addCriterion("pay_time <>", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeGreaterThan(Long value) {
            addCriterion("pay_time >", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeGreaterThanOrEqualTo(Long value) {
            addCriterion("pay_time >=", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeLessThan(Long value) {
            addCriterion("pay_time <", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeLessThanOrEqualTo(Long value) {
            addCriterion("pay_time <=", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeIn(List<Long> values) {
            addCriterion("pay_time in", values, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotIn(List<Long> values) {
            addCriterion("pay_time not in", values, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeBetween(Long value1, Long value2) {
            addCriterion("pay_time between", value1, value2, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotBetween(Long value1, Long value2) {
            addCriterion("pay_time not between", value1, value2, "payTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIsNull() {
            addCriterion("refund_time is null");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIsNotNull() {
            addCriterion("refund_time is not null");
            return (Criteria) this;
        }

        public Criteria andRefundTimeEqualTo(Long value) {
            addCriterion("refund_time =", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotEqualTo(Long value) {
            addCriterion("refund_time <>", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeGreaterThan(Long value) {
            addCriterion("refund_time >", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeGreaterThanOrEqualTo(Long value) {
            addCriterion("refund_time >=", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeLessThan(Long value) {
            addCriterion("refund_time <", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeLessThanOrEqualTo(Long value) {
            addCriterion("refund_time <=", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIn(List<Long> values) {
            addCriterion("refund_time in", values, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotIn(List<Long> values) {
            addCriterion("refund_time not in", values, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeBetween(Long value1, Long value2) {
            addCriterion("refund_time between", value1, value2, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotBetween(Long value1, Long value2) {
            addCriterion("refund_time not between", value1, value2, "refundTime");
            return (Criteria) this;
        }

        public Criteria andOrderTypeIsNull() {
            addCriterion("order_type is null");
            return (Criteria) this;
        }

        public Criteria andOrderTypeIsNotNull() {
            addCriterion("order_type is not null");
            return (Criteria) this;
        }

        public Criteria andOrderTypeEqualTo(Boolean value) {
            addCriterion("order_type =", value, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeNotEqualTo(Boolean value) {
            addCriterion("order_type <>", value, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeGreaterThan(Boolean value) {
            addCriterion("order_type >", value, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeGreaterThanOrEqualTo(Boolean value) {
            addCriterion("order_type >=", value, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeLessThan(Boolean value) {
            addCriterion("order_type <", value, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeLessThanOrEqualTo(Boolean value) {
            addCriterion("order_type <=", value, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeIn(List<Boolean> values) {
            addCriterion("order_type in", values, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeNotIn(List<Boolean> values) {
            addCriterion("order_type not in", values, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeBetween(Boolean value1, Boolean value2) {
            addCriterion("order_type between", value1, value2, "orderType");
            return (Criteria) this;
        }

        public Criteria andOrderTypeNotBetween(Boolean value1, Boolean value2) {
            addCriterion("order_type not between", value1, value2, "orderType");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusIsNull() {
            addCriterion("clear_customs_status is null");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusIsNotNull() {
            addCriterion("clear_customs_status is not null");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusEqualTo(Boolean value) {
            addCriterion("clear_customs_status =", value, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusNotEqualTo(Boolean value) {
            addCriterion("clear_customs_status <>", value, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusGreaterThan(Boolean value) {
            addCriterion("clear_customs_status >", value, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusGreaterThanOrEqualTo(Boolean value) {
            addCriterion("clear_customs_status >=", value, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusLessThan(Boolean value) {
            addCriterion("clear_customs_status <", value, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusLessThanOrEqualTo(Boolean value) {
            addCriterion("clear_customs_status <=", value, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusIn(List<Boolean> values) {
            addCriterion("clear_customs_status in", values, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusNotIn(List<Boolean> values) {
            addCriterion("clear_customs_status not in", values, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusBetween(Boolean value1, Boolean value2) {
            addCriterion("clear_customs_status between", value1, value2, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andClearCustomsStatusNotBetween(Boolean value1, Boolean value2) {
            addCriterion("clear_customs_status not between", value1, value2, "clearCustomsStatus");
            return (Criteria) this;
        }

        public Criteria andInviteCodeIsNull() {
            addCriterion("invite_code is null");
            return (Criteria) this;
        }

        public Criteria andInviteCodeIsNotNull() {
            addCriterion("invite_code is not null");
            return (Criteria) this;
        }

        public Criteria andInviteCodeEqualTo(String value) {
            addCriterion("invite_code =", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeNotEqualTo(String value) {
            addCriterion("invite_code <>", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeGreaterThan(String value) {
            addCriterion("invite_code >", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeGreaterThanOrEqualTo(String value) {
            addCriterion("invite_code >=", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeLessThan(String value) {
            addCriterion("invite_code <", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeLessThanOrEqualTo(String value) {
            addCriterion("invite_code <=", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeLike(String value) {
            addCriterion("invite_code like", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeNotLike(String value) {
            addCriterion("invite_code not like", value, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeIn(List<String> values) {
            addCriterion("invite_code in", values, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeNotIn(List<String> values) {
            addCriterion("invite_code not in", values, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeBetween(String value1, String value2) {
            addCriterion("invite_code between", value1, value2, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andInviteCodeNotBetween(String value1, String value2) {
            addCriterion("invite_code not between", value1, value2, "inviteCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeIsNull() {
            addCriterion("source_user_invitation_code is null");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeIsNotNull() {
            addCriterion("source_user_invitation_code is not null");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeEqualTo(String value) {
            addCriterion("source_user_invitation_code =", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeNotEqualTo(String value) {
            addCriterion("source_user_invitation_code <>", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeGreaterThan(String value) {
            addCriterion("source_user_invitation_code >", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeGreaterThanOrEqualTo(String value) {
            addCriterion("source_user_invitation_code >=", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeLessThan(String value) {
            addCriterion("source_user_invitation_code <", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeLessThanOrEqualTo(String value) {
            addCriterion("source_user_invitation_code <=", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeLike(String value) {
            addCriterion("source_user_invitation_code like", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeNotLike(String value) {
            addCriterion("source_user_invitation_code not like", value, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeIn(List<String> values) {
            addCriterion("source_user_invitation_code in", values, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeNotIn(List<String> values) {
            addCriterion("source_user_invitation_code not in", values, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeBetween(String value1, String value2) {
            addCriterion("source_user_invitation_code between", value1, value2, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andSourceUserInvitationCodeNotBetween(String value1, String value2) {
            addCriterion("source_user_invitation_code not between", value1, value2, "sourceUserInvitationCode");
            return (Criteria) this;
        }

        public Criteria andGiftTypeIsNull() {
            addCriterion("gift_type is null");
            return (Criteria) this;
        }

        public Criteria andGiftTypeIsNotNull() {
            addCriterion("gift_type is not null");
            return (Criteria) this;
        }

        public Criteria andGiftTypeEqualTo(Byte value) {
            addCriterion("gift_type =", value, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeNotEqualTo(Byte value) {
            addCriterion("gift_type <>", value, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeGreaterThan(Byte value) {
            addCriterion("gift_type >", value, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeGreaterThanOrEqualTo(Byte value) {
            addCriterion("gift_type >=", value, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeLessThan(Byte value) {
            addCriterion("gift_type <", value, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeLessThanOrEqualTo(Byte value) {
            addCriterion("gift_type <=", value, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeIn(List<Byte> values) {
            addCriterion("gift_type in", values, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeNotIn(List<Byte> values) {
            addCriterion("gift_type not in", values, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeBetween(Byte value1, Byte value2) {
            addCriterion("gift_type between", value1, value2, "giftType");
            return (Criteria) this;
        }

        public Criteria andGiftTypeNotBetween(Byte value1, Byte value2) {
            addCriterion("gift_type not between", value1, value2, "giftType");
            return (Criteria) this;
        }

        public Criteria andSupplierIdIsNull() {
            addCriterion("supplier_id is null");
            return (Criteria) this;
        }

        public Criteria andSupplierIdIsNotNull() {
            addCriterion("supplier_id is not null");
            return (Criteria) this;
        }

        public Criteria andSupplierIdEqualTo(Long value) {
            addCriterion("supplier_id =", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdNotEqualTo(Long value) {
            addCriterion("supplier_id <>", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdGreaterThan(Long value) {
            addCriterion("supplier_id >", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdGreaterThanOrEqualTo(Long value) {
            addCriterion("supplier_id >=", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdLessThan(Long value) {
            addCriterion("supplier_id <", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdLessThanOrEqualTo(Long value) {
            addCriterion("supplier_id <=", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdIn(List<Long> values) {
            addCriterion("supplier_id in", values, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdNotIn(List<Long> values) {
            addCriterion("supplier_id not in", values, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdBetween(Long value1, Long value2) {
            addCriterion("supplier_id between", value1, value2, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdNotBetween(Long value1, Long value2) {
            addCriterion("supplier_id not between", value1, value2, "supplierId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdIsNull() {
            addCriterion("pop_bill_id is null");
            return (Criteria) this;
        }

        public Criteria andPopBillIdIsNotNull() {
            addCriterion("pop_bill_id is not null");
            return (Criteria) this;
        }

        public Criteria andPopBillIdEqualTo(Long value) {
            addCriterion("pop_bill_id =", value, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdNotEqualTo(Long value) {
            addCriterion("pop_bill_id <>", value, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdGreaterThan(Long value) {
            addCriterion("pop_bill_id >", value, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdGreaterThanOrEqualTo(Long value) {
            addCriterion("pop_bill_id >=", value, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdLessThan(Long value) {
            addCriterion("pop_bill_id <", value, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdLessThanOrEqualTo(Long value) {
            addCriterion("pop_bill_id <=", value, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdIn(List<Long> values) {
            addCriterion("pop_bill_id in", values, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdNotIn(List<Long> values) {
            addCriterion("pop_bill_id not in", values, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdBetween(Long value1, Long value2) {
            addCriterion("pop_bill_id between", value1, value2, "popBillId");
            return (Criteria) this;
        }

        public Criteria andPopBillIdNotBetween(Long value1, Long value2) {
            addCriterion("pop_bill_id not between", value1, value2, "popBillId");
            return (Criteria) this;
        }

        public Criteria andBusinessModelIsNull() {
            addCriterion("business_model is null");
            return (Criteria) this;
        }

        public Criteria andBusinessModelIsNotNull() {
            addCriterion("business_model is not null");
            return (Criteria) this;
        }

        public Criteria andBusinessModelEqualTo(Boolean value) {
            addCriterion("business_model =", value, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelNotEqualTo(Boolean value) {
            addCriterion("business_model <>", value, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelGreaterThan(Boolean value) {
            addCriterion("business_model >", value, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelGreaterThanOrEqualTo(Boolean value) {
            addCriterion("business_model >=", value, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelLessThan(Boolean value) {
            addCriterion("business_model <", value, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelLessThanOrEqualTo(Boolean value) {
            addCriterion("business_model <=", value, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelIn(List<Boolean> values) {
            addCriterion("business_model in", values, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelNotIn(List<Boolean> values) {
            addCriterion("business_model not in", values, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelBetween(Boolean value1, Boolean value2) {
            addCriterion("business_model between", value1, value2, "businessModel");
            return (Criteria) this;
        }

        public Criteria andBusinessModelNotBetween(Boolean value1, Boolean value2) {
            addCriterion("business_model not between", value1, value2, "businessModel");
            return (Criteria) this;
        }

        public Criteria andWhetherExportIsNull() {
            addCriterion("whether_export is null");
            return (Criteria) this;
        }

        public Criteria andWhetherExportIsNotNull() {
            addCriterion("whether_export is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherExportEqualTo(Boolean value) {
            addCriterion("whether_export =", value, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportNotEqualTo(Boolean value) {
            addCriterion("whether_export <>", value, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportGreaterThan(Boolean value) {
            addCriterion("whether_export >", value, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportGreaterThanOrEqualTo(Boolean value) {
            addCriterion("whether_export >=", value, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportLessThan(Boolean value) {
            addCriterion("whether_export <", value, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportLessThanOrEqualTo(Boolean value) {
            addCriterion("whether_export <=", value, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportIn(List<Boolean> values) {
            addCriterion("whether_export in", values, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportNotIn(List<Boolean> values) {
            addCriterion("whether_export not in", values, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportBetween(Boolean value1, Boolean value2) {
            addCriterion("whether_export between", value1, value2, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andWhetherExportNotBetween(Boolean value1, Boolean value2) {
            addCriterion("whether_export not between", value1, value2, "whetherExport");
            return (Criteria) this;
        }

        public Criteria andLiveIdIsNull() {
            addCriterion("live_id is null");
            return (Criteria) this;
        }

        public Criteria andLiveIdIsNotNull() {
            addCriterion("live_id is not null");
            return (Criteria) this;
        }

        public Criteria andLiveIdEqualTo(Integer value) {
            addCriterion("live_id =", value, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdNotEqualTo(Integer value) {
            addCriterion("live_id <>", value, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdGreaterThan(Integer value) {
            addCriterion("live_id >", value, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("live_id >=", value, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdLessThan(Integer value) {
            addCriterion("live_id <", value, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdLessThanOrEqualTo(Integer value) {
            addCriterion("live_id <=", value, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdIn(List<Integer> values) {
            addCriterion("live_id in", values, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdNotIn(List<Integer> values) {
            addCriterion("live_id not in", values, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdBetween(Integer value1, Integer value2) {
            addCriterion("live_id between", value1, value2, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveIdNotBetween(Integer value1, Integer value2) {
            addCriterion("live_id not between", value1, value2, "liveId");
            return (Criteria) this;
        }

        public Criteria andLiveSceneIsNull() {
            addCriterion("live_scene is null");
            return (Criteria) this;
        }

        public Criteria andLiveSceneIsNotNull() {
            addCriterion("live_scene is not null");
            return (Criteria) this;
        }

        public Criteria andLiveSceneEqualTo(Integer value) {
            addCriterion("live_scene =", value, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneNotEqualTo(Integer value) {
            addCriterion("live_scene <>", value, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneGreaterThan(Integer value) {
            addCriterion("live_scene >", value, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneGreaterThanOrEqualTo(Integer value) {
            addCriterion("live_scene >=", value, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneLessThan(Integer value) {
            addCriterion("live_scene <", value, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneLessThanOrEqualTo(Integer value) {
            addCriterion("live_scene <=", value, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneIn(List<Integer> values) {
            addCriterion("live_scene in", values, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneNotIn(List<Integer> values) {
            addCriterion("live_scene not in", values, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneBetween(Integer value1, Integer value2) {
            addCriterion("live_scene between", value1, value2, "liveScene");
            return (Criteria) this;
        }

        public Criteria andLiveSceneNotBetween(Integer value1, Integer value2) {
            addCriterion("live_scene not between", value1, value2, "liveScene");
            return (Criteria) this;
        }

        public Criteria andBargainAmountIsNull() {
            addCriterion("bargain_amount is null");
            return (Criteria) this;
        }

        public Criteria andBargainAmountIsNotNull() {
            addCriterion("bargain_amount is not null");
            return (Criteria) this;
        }

        public Criteria andBargainAmountEqualTo(BigDecimal value) {
            addCriterion("bargain_amount =", value, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountNotEqualTo(BigDecimal value) {
            addCriterion("bargain_amount <>", value, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountGreaterThan(BigDecimal value) {
            addCriterion("bargain_amount >", value, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("bargain_amount >=", value, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountLessThan(BigDecimal value) {
            addCriterion("bargain_amount <", value, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("bargain_amount <=", value, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountIn(List<BigDecimal> values) {
            addCriterion("bargain_amount in", values, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountNotIn(List<BigDecimal> values) {
            addCriterion("bargain_amount not in", values, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("bargain_amount between", value1, value2, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBargainAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("bargain_amount not between", value1, value2, "bargainAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountIsNull() {
            addCriterion("balance_amount is null");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountIsNotNull() {
            addCriterion("balance_amount is not null");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountEqualTo(Double value) {
            addCriterion("balance_amount =", value, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountNotEqualTo(Double value) {
            addCriterion("balance_amount <>", value, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountGreaterThan(Double value) {
            addCriterion("balance_amount >", value, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("balance_amount >=", value, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountLessThan(Double value) {
            addCriterion("balance_amount <", value, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountLessThanOrEqualTo(Double value) {
            addCriterion("balance_amount <=", value, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountIn(List<Double> values) {
            addCriterion("balance_amount in", values, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountNotIn(List<Double> values) {
            addCriterion("balance_amount not in", values, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountBetween(Double value1, Double value2) {
            addCriterion("balance_amount between", value1, value2, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andBalanceAmountNotBetween(Double value1, Double value2) {
            addCriterion("balance_amount not between", value1, value2, "balanceAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountIsNull() {
            addCriterion("act_discount_amount is null");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountIsNotNull() {
            addCriterion("act_discount_amount is not null");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountEqualTo(Double value) {
            addCriterion("act_discount_amount =", value, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountNotEqualTo(Double value) {
            addCriterion("act_discount_amount <>", value, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountGreaterThan(Double value) {
            addCriterion("act_discount_amount >", value, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("act_discount_amount >=", value, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountLessThan(Double value) {
            addCriterion("act_discount_amount <", value, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountLessThanOrEqualTo(Double value) {
            addCriterion("act_discount_amount <=", value, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountIn(List<Double> values) {
            addCriterion("act_discount_amount in", values, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountNotIn(List<Double> values) {
            addCriterion("act_discount_amount not in", values, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountBetween(Double value1, Double value2) {
            addCriterion("act_discount_amount between", value1, value2, "actDiscountAmount");
            return (Criteria) this;
        }

        public Criteria andActDiscountAmountNotBetween(Double value1, Double value2) {
            addCriterion("act_discount_amount not between", value1, value2, "actDiscountAmount");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}